package com.szholly.data.general;

/**
 * 类功能说明 定义属性数据查询接口 IDataSecurity
 */
public interface IQueryFilter {

	/**
	 * 设置是否添加字典的Caption列
	 * 
	 * @param value
	 */
	public void setAddCaptionField(boolean value);

	/**
	 * 获取是否添加字典的Caption列
	 * 
	 * @return
	 */
	public boolean getAddCaptionField();

	/**
	 * 获取查询字段列表
	 * 
	 * @return
	 */
	String getSelectFields();

	/**
	 * 设置查询字段列表
	 * 
	 * @param selectFields
	 */
	void setSelectFields(String selectFields);

	/**
	 * 获取查询条件
	 * 
	 * @return
	 */
	String getWhereString();

	/**
	 * 设置查询条件
	 * 
	 * @param whereString
	 */
	void setWhereString(String whereString);

	/**
	 * 获取查询条件参数
	 * 
	 * @return
	 */
	GlobalParameter[] getWhereParameter();

	/**
	 * 设置查询条件参数
	 * 
	 * @param WhereParameter
	 */
	void setWhereParameter(GlobalParameter[] WhereParameter);

	/**
	 * 获取GroupBy条件
	 * 
	 * @return
	 */
	String getGroupByString();

	/**
	 * 设置GroupBy条件
	 * 
	 * @param groupByString
	 */
	void setGroupByString(String groupByString);

	/**
	 * 获取序排字符串
	 * 
	 * @return
	 */
	String getOrderByString();

	/**
	 * 设置序排字符串
	 * 
	 * @param orderByString
	 */
	void setOrderByString(String orderByString);

	/**
	 * 获取值缓存数据的key
	 * 
	 * @return
	 */
	String getKey();
	
	/**
	 * 转换成SQL语句
	 * @param ptable
	 * @return
	 */
	String toSql(ITable ptable);
}